{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x116311748>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Starting b = 0, k = 0, error = 2782.5539172416056\n",
      "Running...\n",
      "epochs 0\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nnUAsAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1162f9c50>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 5\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n5hToRURq7v8DoUQMoLIBEvsAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x10c5c4550>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 10\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n9/8BczaoDcwWU9oAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1140828d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 15\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nBgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x116d593c8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 20\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nBaegFxEpuP8PlfqD0vJMayEAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x116b7e860>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 25\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nrkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x116c22e10>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 30\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nRK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x116350f98>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 35\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1160dc780>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 40\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1165fd9e8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs 45\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1165c8b70>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "After 50 iterations b = 0.030569950649287983, k = 1.4788903781318357, error = 56.32488184238028\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "# load data\n",
    "data = np.genfromtxt(\"data.csv\", delimiter=\",\")\n",
    "x = data[:,0]\n",
    "y = data[:,1]\n",
    "plt.scatter(x,y)\n",
    "plt.show()\n",
    "\n",
    "\n",
    "#learning rate\n",
    "lr = 0.0001\n",
    "# 截距\n",
    "b = 0\n",
    "# 斜率\n",
    "k = 0\n",
    "# 最大迭代次数\n",
    "epochs = 50\n",
    "\n",
    "# 最小二乘法\n",
    "def compute_err(b, k, x, y):\n",
    "    totalError = 0.0\n",
    "    for i in range(0, len(x)):\n",
    "        totalError += (y[i] - (k * x[i] + b)) ** 2\n",
    "                       \n",
    "    return totalError / len(x) / 2.0\n",
    "\n",
    "def gradient_descent_runner(x, y, b, k, lr, epochs):\n",
    "    # 计算数据总量\n",
    "    m = float(len(x))\n",
    "    # 循环epoch次\n",
    "    for i in range(epochs):\n",
    "        b_grad = 0\n",
    "        k_grad = 0\n",
    "        # 计算梯度总和再平均\n",
    "        for j in range(0, len(x)):\n",
    "            b_grad += (1/m)*((k*x[j] + b)- y[j])\n",
    "            k_grad += (1/m)*x[j]*((k *x[j] +b) - y[j])\n",
    "        b = b - (lr * b_grad)    \n",
    "        k = k - (lr * k_grad)\n",
    "        # 每迭代5次，输出一次图像\n",
    "        if i % 5 == 0:\n",
    "            print(\"epochs\", i)\n",
    "            plt.plot(x, y, 'b>')\n",
    "            plt.plot(x, k*x + b, 'r')\n",
    "            plt.show()\n",
    "    return b, k  \n",
    "\n",
    "print(\"Starting b = {0}, k = {1}, error = {2}\".format(b, k, compute_err(b, k, x, y)))\n",
    "print(\"Running...\")\n",
    "b, k = gradient_descent_runner(x, y, b, k, lr, epochs)\n",
    "print(\"After {0} iterations b = {1}, k = {2}, error = {3}\".format(epochs, b, k, compute_err(b, k, x, y)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "ename": "NameError",
     "evalue": "name 'np' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-3-40278e5519b2>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0;31m# load data\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mdata\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgenfromtxt\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"data.csv\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdelimiter\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\",\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      3\u001b[0m \u001b[0mx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      5\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscatter\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mNameError\u001b[0m: name 'np' is not defined"
     ]
    }
   ],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "ename": "SyntaxError",
     "evalue": "invalid syntax (<ipython-input-3-4a4a2e214ab7>, line 15)",
     "output_type": "error",
     "traceback": [
      "\u001b[0;36m  File \u001b[0;32m\"<ipython-input-3-4a4a2e214ab7>\"\u001b[0;36m, line \u001b[0;32m15\u001b[0m\n\u001b[0;31m    return totalError/float(2* len(x))\u001b[0m\n\u001b[0m         ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
     ]
    }
   ],
   "source": [
    "#learning rate\n",
    "lr = 0.0001\n",
    "# 截距\n",
    "b = 0\n",
    "# 斜率\n",
    "k = 0\n",
    "# 最大迭代次数\n",
    "epochs = 50\n",
    "\n",
    "# 最小二乘法\n",
    "def compute_err(b, k, x, y):\n",
    "    totalError = 0\n",
    "    for i in range(0, len(x)):\n",
    "        totalError += (y[i] - (k * x[i] +b) ** 2\n",
    "    return totalError/float(len(x))/2.0\n",
    "\n",
    "def gradient_descent_runner(x, y, b, k, lr, epochs):\n",
    "    # 计算数据总量\n",
    "    m = float(len(x))\n",
    "    # 循环epoch次\n",
    "    for i in range(epochs):\n",
    "        b_grad = 0\n",
    "        k_grad = 0\n",
    "        # 计算梯度总和再平均\n",
    "        for j in range(0, len(x)):\n",
    "            b_grad += (1/m)*((k*x[j] + b)- y[j])\n",
    "            k_grad += (1/m)*x[j]*((k *x[j] +b) - y[j])\n",
    "        b = b - (lr * b_grad)    \n",
    "        k = k - (lr * k_grad)\n",
    "        # 每迭代5次，输出一次图像\n",
    "        if i % 5 == 0\n",
    "            print(\"epochs\", i)\n",
    "            plt.plot(x, y, 'b.')\n",
    "            plt.plot(x, k*x + b, 'r')\n",
    "            plt.show()\n",
    "    return b, k        "
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
